package SpeicherModel;

import java.util.ArrayList;
import java.util.List;
import importing.importPersonplanXML;
/**
 * Einfache Testprogramme
 * @author info
 */
public class Main {
    public static void main(String[] args) {
        importPersonplanXML lese = new importPersonplanXML();
        lese.leseXML("src/daten/personplanv2.xml");
        String fach;
        Fach f = new Fach();
        List<ArrayList<Lehrer>> lehrer = new ArrayList<ArrayList<Lehrer>>();
        List<Fach>faecher = new ArrayList<Fach>();
        for(int i = 0;i<lese.getFaecher().size();i++) {
            lehrer.add(i, new ArrayList<Lehrer>());
            for(int j = 0;j<(lese.getKlassen().size()/lese.getFaecher().size());j++) {
                fach = (String)lese.getFaecher().get(i).get(j);                
                lehrer.get(i).add(j, Lehrer.createLehrer("randomKI",fach,4));
            }
            fach = (String)lese.getFaecher().get(i).get(8);
            f = new Fach(fach, 4, lehrer.get(i));
            faecher.add(f);            
        }
        List<Integer> minSoll = new ArrayList<Integer>();
        minSoll.add(3);
        minSoll.add(4);
        List<Integer> maxSoll = new ArrayList<Integer>();
        maxSoll.add(4);
        maxSoll.add(5);
        Stufe stufen = new Stufe("ITA", 1, minSoll, maxSoll);
        List<Stufe> stufenliste = new ArrayList<Stufe>();
        stufenliste.add(stufen);
        String kl;
        String stufe;
        int zug;
        List<Klasse> klasse = new ArrayList<Klasse>();
        for(int i = 0;i<lese.getKlassen().size();i++) {
            kl = (String) lese.getKlassen().get(i);
            stufe = splitStufe(kl);
            zug = Integer.parseInt(splitZug(kl));
            Klasse daniel = new Klasse(stufe, zug, stufenliste);
            klasse.add(daniel);
        }

        Einsatzplan satz = new Einsatzplan(faecher, klasse);
        List<Lehrer> lehrlist = new ArrayList<Lehrer>();
        Lehrer lehr = Lehrer.createLehrer("Langewiesche", "LAN", 4);
        lehrlist.add(lehr);
        Einsatz einsatz = new Einsatz(4, lehrlist);
        satz.setEinsatz(klasse.get(1), faecher.get(1), einsatz);
        System.out.println(satz.toString());

//        for(int i = 0;i<lehr.getAlleLehrer().size();i++) {
//            System.out.println(f.getLehrer().get);
//        }     MIEP!
    }

    public static String splitStufe(String stufe) {
        stufe = stufe.substring(0, 1);
        return stufe;
    }

    public static String splitZug(String zug) {
        zug = zug.substring(1);
                return zug;
    }
}
